package com.huluobo.a2211mdmdemo

import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.grid.GridCells
import androidx.compose.foundation.lazy.grid.LazyHorizontalGrid
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
import androidx.compose.foundation.lazy.grid.items
import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.staggeredgrid.LazyVerticalStaggeredGrid
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.material3.Divider
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.unit.dp
import androidx.core.app.NotificationCompat.TvExtender
import coil.compose.AsyncImage

/**
 *  Created by LC on 2025/4/22.
 */

data class Student(val name: String, val desc: String, val img: String)

@Composable
fun demo01() {
    val list = mutableListOf<Student>()

    for (i in 1..20) {
        list.add(
            Student(
                "张三$i",
                "这是我的个人简介:$i",
                "https://img1.baidu.com/it/u=4214113141,2036563917&fm=253&app=120&size=w931&n=0&f=JPEG&fmt=auto?sec=1729098000&t=0662d2b383091882ccdd43ad060de2a7"
            )
        )
    }

    //纵向列表
//    LazyColumn(Modifier.padding(10.dp), verticalArrangement = Arrangement.spacedBy(10.dp), content = {
//        //相当于adapter
//        items(list) {
//            StudentItem(student = it)
//        }
//    })

    //纵向网格布局
//    LazyVerticalGrid(
//        modifier = Modifier.padding(10.dp),
//        verticalArrangement = Arrangement.spacedBy(10.dp),
//        horizontalArrangement = Arrangement.spacedBy(10.dp),
//        columns = GridCells.Fixed(2),
//        content = {
//            items(list) {
//                StudentItem(student = it)
//            }
//        })

    LazyHorizontalGrid(rows = GridCells.Fixed(2), content = {
        items(list) {
            StudentItem(student = it)
        }
    })
}

//相当于RecyclerView的item
@Composable
fun StudentItem(student: Student) {
    Column() {
        Row {
            AsyncImage(
                model = student.img,
                contentDescription = "",
                contentScale = ContentScale.Crop,
                modifier = Modifier
                    .size(80.dp)
                    .clip(
                        CircleShape
                    )
            )
            //中间给一个10dp的空格
            Spacer(modifier = Modifier.width(10.dp))
            Column(Modifier.height(80.dp), verticalArrangement = Arrangement.SpaceAround) {
                Text(text = student.name)
                Text(text = student.desc)
            }
        }
        Spacer(modifier = Modifier.height(10.dp))
        Divider()
    }

}